package example.proxy.cglibProxy;

import example.proxy.staticProxy.ToyFactory;
import org.springframework.aop.framework.ProxyFactoryBean;
import org.springframework.beans.factory.BeanFactory;

//使用cglib动态代理由于是直接操作底层二进制 不需要理会类类关系，所以没有接口也能代理
//jdk动态代理 是根据类加载器中的类的代码 来生成匿名对象 所以 必须提供接口
//springmvc 没有默认使用哪个动态代理，而是需要代理的对象有接口 使用 jdk 没有使用cglib
public class MainCglibProxy {
	public static void main(String[] args) {
		CglibInterceptor cglibProxy = new CglibInterceptor();
		ToyFactory toyFactory = (ToyFactory) cglibProxy.newProxyInstance(ToyFactory.class);
		toyFactory.getToy("变形金刚");

		ProxyFactoryBean dd = null;
		dd.getObject();
	}
}
